﻿<Serializable()> _
Public Class clsNotificationCollection
	Inherits clsBaseClass

	Private lstItems As List(Of clsNotification)

	Public Overridable ReadOnly Property Items() As List(Of clsNotification)
		Get
			Return lstItems
		End Get
	End Property

	Public Sub New()
		Init()
	End Sub

	Public Sub New(ByVal strName As String)
		MyBase.New(strName)
		Init()
	End Sub

	Private Sub Init()
		lstItems = New List(Of clsNotification)
	End Sub

	Protected Overrides Sub Finalize()
		Dispose()
		MyBase.Finalize()
	End Sub

	Public Overrides Sub Dispose()
		If lstItems IsNot Nothing Then
			lstItems.Clear()
			lstItems = Nothing
		End If
		MyBase.Dispose()
	End Sub

	Public Overrides Sub GetObjectData(ByVal info As System.Runtime.Serialization.SerializationInfo, ByVal context As System.Runtime.Serialization.StreamingContext)
		MyBase.GetObjectData(info, context)
		info.AddValue("Items", Items)
	End Sub
End Class
